<?php

# -- DÉBUT NOTE DE LICENCE -------------------------------------
#
# Ce fichier fait partie de Clicpage.
#
# Copyright (c) 2010 Francois (www.clicpage.net)
# Distribué selon les termes de la licence GPL version 2.0.
# Consultez le fichier LICENCE ou
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
#
# -- FIN NOTE DE LICENCE ---------------------------------------

require(dirname(__FILE__).'/_prepend.php');
require(CP_CLASS_FOLDER.'/prepend.php');

$core->initAuth();

# Déconnexion
if($_GET['deconnexion'] == '1')
{
	$core->auth->deconnecterUtilisateur();
	http::redirect('auth.php');
}

# Charger la langue
$langue = $core->con->select('SELECT propriete FROM '.$core->prefix."site WHERE propriete='site_langue' AND module='core'")->propriete;
$core->setLangue($langue);
$core->chargerFichierLangue('main');

# Si l'utilisateur est déjà connecté, le rediriger vers l'interface d'administration
if($core->auth->verifierUtilisateur())  {
	if($core->auth->verifierPermission('administrer')) {
		http::redirect('index.php');
	} else {
		$afficherErreur = __('Vous n\'êtes pas autorisé à accéder à l\'interface d\'administration.');
	}
}

# Auto upgrade
if (empty($_POST)) {
	require CP_RACINE.'/inc/dbschema/upgrade.php';
	try {
		if (($changes = clicpageUpgrade($core)) !== false) {
			$msg = __('Clicpage a été mis à jour.').'<!-- '.$changes.' -->';
		}
	} catch (Exception $e) {
		$err = $e->getMessage();
	}
}

# Connexion
if(	$_POST['action_utilisateur'] == 'connexion' &&
	$_POST['connexion_nonce'] == $_SESSION['connexion_nonce'] &&
	$core->auth->verifierSession()
)
{

	if(empty($_POST['nom_utilisateur']) || empty($_POST['mot_de_passe'])) {
		$err = 'Vous devez spécifier un nom d\'utilisateur et un mot de passe.';
	}
	elseif($core->auth->connecterUtilisateur($_POST['nom_utilisateur'], $_POST['mot_de_passe'], (boolean) $_POST['se_souvenir'])) {
		unset($_SESSION['connexion_nonce']);
		http::redirect('index.php');
	}
	else{
		$err = __('Nom d\'utilisateur ou mot de passe invalide.');
	}
}
else {
	$_SESSION['sess_browser_uid'] = http::browserUID(CP_MASTER_KEY);
}

$nom_utilisateur = empty($_POST['nom_utilisateur']) ? '' : html::escapeHTML($_POST['nom_utilisateur']);

$_SESSION['connexion_nonce'] = sha1(uniqid(rand(),true));

// HTTP/1.1
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Content-Type: text/html; charset=utf-8');

// HTTP/1.0
header("Pragma: no-cache");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
	<style type="text/css">@import url(design/auth.css);</style>
	<title>Clicpage - <?php echo __('Connexion'); ?></title>
</head>

<body>

<form action="auth.php" method="post" id="formulaireConnexion">

	<div id="fenetreConnexion" <?php echo ($err || $msg) ? 'class="fenetreConnexionHaute"' : 'class="fenetreConnexion"'; ?>>
	
	<h1>Clicpage</h1>
<?php
	if($msg) {
		echo
		'<p class="success">'.
			$msg.
		'</p>';
	}
?>
	
	<p id="p_nom_utilisateur">
		<label for="nom_utilisateur"><?php echo __('Nom d\'utilisateur'); ?></label>
		<?php echo form::field('nom_utilisateur', 25, 50, $nom_utilisateur); ?>
	</p>
	
	<p>
		<label for="mot_de_passe"><?php echo __('Mot de passe'); ?></label>
		<?php echo form::password('mot_de_passe', 25, 50); ?>
	</p>
	
	<p class="se_souvenir">
		<?php echo form::checkbox('se_souvenir', 1); ?>
		<label for="se_souvenir"><?php echo __('Se souvenir de moi'); ?></label>
	</p>
	
	<?php
		echo form::hidden('action_utilisateur', 'connexion');
		echo form::hidden('connexion_nonce', $_SESSION['connexion_nonce']);
	?>
	
<?php
	if($err) {
		echo
		'<p class="erreurFormulaire">'.
			$err.
		'</p>';	
	}
?>
	
	<p>
		<input type="submit" value="Connexion"/>
	</p>
	
	
	</div>
	
</form>
	
</body>

</html>
